Linear programming

LP

Primal (P), where xnx \in \mathbb{R}^n: minimizecTxsubject toAx=bx0\begin{equation} \begin{aligned} & \text{minimize} & & c^T x \\ & \text{subject to} & & Ax = b \\ & & & x \geq 0 \end{aligned} \end{equation}

Lagrangian: L(x,λ,ν)=cTxλTx+νT(Axb)=(cλ+ATν)xbTνL(x,\lambda,\nu)=c^T x - \lambda^T x + \nu^T (Ax-b) = (c-\lambda+A^T \nu)x-b^T \nu

Lagrange dual function (LDF): g(λ,ν)=infxL(x,λ,ν)={bTνif cλ+ATν=0otherwiseg(\lambda,\nu) = \inf_x L(x,\lambda,\nu)=\begin{cases} -b^T \nu \quad \text{if } c-\lambda + A^T \nu = 0 \\ -\infty \quad \text{otherwise}\end{cases}

Lagrange dual problem (LDP): supλ0g(λ,ν)\sup_{\lambda \geq 0} g(\lambda,\nu) \equiv maxbTysubject toATy+λ=cλ0\begin{equation} \begin{aligned} & \max & & b^T y \\ & \text{subject to} & & A^T y + \lambda = c \\ & & & \lambda \geq 0 \end{aligned} \end{equation} where λ\lambda is the dual slack variable, transforming ATycA^T y \leq c into an equality.

Dual (D): maxbTysubject toATyc\begin{equation} \begin{aligned} & \max & & b^T y \\ & \text{subject to} & & A^T y \leq c \end{aligned} \end{equation}


References:

  1. https://www.cs.princeton.edu/courses/archive/fall18/cos521/Lectures/lec17.pdf